package com.sx.pipeline.repos.http.impl

import com.sx.pipeline.app.config.BaseEntity
import com.sx.pipeline.repos.http.req.DistrictBorderDTO
import com.sx.pipeline.repos.http.res.Ipage
import com.sx.pipeline.repos.http.res.TerritoryVO
import com.sx.pipeline.utils.kml.FileParseBean
import io.reactivex.rxjava3.core.Observable
import retrofit2.http.Body
import retrofit2.http.GET
import retrofit2.http.POST
import retrofit2.http.Query

/**
 * @Author: YY
 * @Date: 2022/8/5
 * @Desc: TODO
 */
interface IMapSource {

    /**
     * 添加负责区域
     */
    fun addTerritory(dto: FileParseBean): Observable<BaseEntity<Any>>

    /**
     * 获取区域列表
     */
    fun getTerritoryList(
        type: Int,
        page: Int,
        limit: Int = 10,
        isPage: Boolean = true
    ): Observable<BaseEntity<Ipage<TerritoryVO>>>


    /**
     * 删除用户管辖区域
     */
    fun deleteTerritory(ids: Long): Observable<BaseEntity<Any>>

    /**
     * 添加行政区域负责区域
     */
    fun addDistrictBorder(dto: DistrictBorderDTO): Observable<BaseEntity<Any>>

    /**
     * 获取行政区域
     */
    fun getDistrictBorderList(
        page: Int,
        limit: Int = 10,
        isPage: Boolean = true
    ): Observable<BaseEntity<Ipage<DistrictBorderDTO>>>

    /**
     * 删除行政区域
     */
    fun deleteDistrictBorder(ids: Long): Observable<BaseEntity<Any>>
}